/*
 * Copyright 2010 bedatadriven
 *
 *    Licensed under the Apache License, Version 2.0 (the "License");
 *    you may not use this file except in compliance with the License.
 *    You may obtain a copy of the License at
 *
 *        http://www.apache.org/licenses/LICENSE-2.0
 *
 *    Unless required by applicable law or agreed to in writing, software
 *    distributed under the License is distributed on an "AS IS" BASIS,
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *    See the License for the specific language governing permissions and
 *    limitations under the License.
 */

/**
 * JacobGen generated file --- do not edit
 *
 * (http://www.bigatti.it/projects/jacobgen)
 */
package com.bedatadriven.mso.excel;

import com.bedatadriven.mso.core.MsoEditingType;
import com.bedatadriven.mso.core.MsoSegmentType;
import com.google.gwt.core.client.JavaScriptObject;

/** Wrapper for Excel.ShapeNodes*/
public class ShapeNodes extends JavaScriptObject {

	protected ShapeNodes() { }
	public native final Object getApplication()/*-{
		return this.Application;
	}-*/;

	public native final int getCreator()/*-{
		return this.Creator;
	}-*/;

	public native final Object getParent()/*-{
		return this.Parent;
	}-*/;

	public native final int getCount()/*-{
		return this.Count;
	}-*/;

	public native final ShapeNode item( Object index)/*-{
		return this.Item( index);
	}-*/;

	public native final JavaScriptObject get_NewEnum()/*-{
		return this._NewEnum;
	}-*/;

	public native final void delete(int index)/*-{
		this.Delete( index);
	}-*/;

	protected native final void _insert(int index,  int segmentType,  int editingType, float x1, float y1, float x2, float y2, float x3, float y3)/*-{
		this.Insert( index, segmentType, editingType, x1, y1, x2, y2, x3, y3);
	}-*/;

	public final void insert(int index, MsoSegmentType segmentType, MsoEditingType editingType, float x1, float y1, float x2, float y2, float x3, float y3){
		_insert(index, segmentType.getValue(), editingType.getValue(), x1, y1, x2, y2, x3, y3);
	}
	protected native final void _setEditingType(int index,  int editingType)/*-{
		this.SetEditingType( index, editingType);
	}-*/;

	public final void setEditingType(int index, MsoEditingType editingType){
		_setEditingType(index, editingType.getValue());
	}
	public native final void setPosition(int index, float x1, float y1)/*-{
		this.SetPosition( index, x1, y1);
	}-*/;

	protected native final void _setSegmentType(int index,  int segmentType)/*-{
		this.SetSegmentType( index, segmentType);
	}-*/;

	public final void setSegmentType(int index, MsoSegmentType segmentType){
		_setSegmentType(index, segmentType.getValue());
	}
}
